/**
 * Copyright ToFBA Ecommerce Logistics LTD. All Rights Reserved.
 *
 * This software is the confidential and proprietary information of
 * Shenzhen ToFBA Ecommerce Logistics Co., Ltd.
 * No body can copy or modify any part of this source without the permission of
 * Shenzhen ToFBA Ecommerce Logistics Co., Ltd.
 *   _________    ___   ________  ______        _       
 *  |  _   _  | .'   `.|_   __  ||_   _ \      / \      
 *  |_/ | | \_|/  .-.  \ | |_ \_|  | |_) |    / _ \     
 *      | |    | |   | | |  _|     |  __'.   / ___ \    
 *     _| |_   \  `-'  /_| |_     _| |__) |_/ /   \ \_  
 *    |_____|   `.___.'|_____|   |_______/|____| |____|
 *                                                
 */
package com.lmexpress.orm.mabang;

import java.io.Serializable;
import java.util.List;

/**
 * <马帮订单>
 * 
 * @author Henry(fba02)
 * @version [版本号, 2020-10-16]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */
@SuppressWarnings("serial")
public class Order implements Serializable { 
    private String code;// 内部订单号    
    private String outTradeCode;
    private String platformTradeCode;// 平台订单编号:例如 ebay,wish 等订单编号  
    private Integer status;// 订单状态    
    private Integer hasException;// 是否有异常    
    private String smtChannelCode;
    private String processMessage;// 异常信息，物流供应商处理信息    
    private Integer erpId;
    private Integer expressChannelId;
    private String expressChannelCode;// 物流产品运单号    
    private String supplierInnerCode;// 物流商内部单号
    private Integer notifyStatus;
    private Integer notifyCount;
    private String notifyNextTime;    
    private String packageId;// Package ID    
    private Double priceForcast;// 预计订单运费    
    private Double priceReal;// 实际订单运费    
    private String shippingCountryCode;// 包裹地址国家代码    
    private String timeCreated;// 订单生成时间    
    private Double weightForcast;// 客户预报订单重量(单位:g克)    
    private Double weightReal;// 供应商实际称重订单重量(单位:g克)    
    private Double length;// 包裹长度(单位:mm 毫米)    
    private Double width;// 包裹宽度(单位:mm 毫米)    
    private Double height;// 包裹高度(单位:mm 毫米)    
    private String productNameCn;// 订单申报物品中文名    
    private String productNameEn;// 订单申报物品英文名
    private Double productValue;// 订单申报价值(原始货币)    
    private String remark;// 备注    
    private Integer itemListQuantity;// 货物数量    
    private Integer itemListCount;// 订单项数量    
    private String currencyCode;// 货币符号    
    private String platformPayTime;// 交易平台付款时间    
    private Integer hasDelete;
    private Integer hasBattery;
    private List<Item> itemList;
    private AddressReceive addressReceive;
    private AddressPickup addressPickup;
    private AddressBack addressBack;
    private MyExpressChannel myExpressChannel;// 对应服务商渠道.即九方渠道
    
    public String getCode() {
        return code;
    }
    
    public void setCode(String code) {
        this.code = code;
    }
    
    public String getOutTradeCode() {
        return outTradeCode;
    }
    
    public void setOutTradeCode(String outTradeCode) {
        this.outTradeCode = outTradeCode;
    }
    
    public String getPlatformTradeCode() {
        return platformTradeCode;
    }
    
    public void setPlatformTradeCode(String platformTradeCode) {
        this.platformTradeCode = platformTradeCode;
    }
    
    public Integer getStatus() {
        return status;
    }
    
    public void setStatus(Integer status) {
        this.status = status;
    }
    
    public Integer getHasException() {
        return hasException;
    }
    
    public void setHasException(Integer hasException) {
        this.hasException = hasException;
    }
    
    public String getSmtChannelCode() {
        return smtChannelCode;
    }
    
    public void setSmtChannelCode(String smtChannelCode) {
        this.smtChannelCode = smtChannelCode;
    }
    
    public String getProcessMessage() {
        return processMessage;
    }
    
    public void setProcessMessage(String processMessage) {
        this.processMessage = processMessage;
    }
    
    public Integer getErpId() {
        return erpId;
    }
    
    public void setErpId(Integer erpId) {
        this.erpId = erpId;
    }
    
    public Integer getExpressChannelId() {
        return expressChannelId;
    }
    
    public void setExpressChannelId(Integer expressChannelId) {
        this.expressChannelId = expressChannelId;
    }
    
    public String getExpressChannelCode() {
        return expressChannelCode;
    }
    
    public void setExpressChannelCode(String expressChannelCode) {
        this.expressChannelCode = expressChannelCode;
    }
    
    public String getSupplierInnerCode() {
        return supplierInnerCode;
    }
    
    public void setSupplierInnerCode(String supplierInnerCode) {
        this.supplierInnerCode = supplierInnerCode;
    }
    
    public Integer getNotifyStatus() {
        return notifyStatus;
    }
    
    public void setNotifyStatus(Integer notifyStatus) {
        this.notifyStatus = notifyStatus;
    }
    
    public Integer getNotifyCount() {
        return notifyCount;
    }
    
    public void setNotifyCount(Integer notifyCount) {
        this.notifyCount = notifyCount;
    }
    
    public String getNotifyNextTime() {
        return notifyNextTime;
    }
    
    public void setNotifyNextTime(String notifyNextTime) {
        this.notifyNextTime = notifyNextTime;
    }
    
    public String getPackageId() {
        return packageId;
    }
    
    public void setPackageId(String packageId) {
        this.packageId = packageId;
    }
    
    public Double getPriceForcast() {
        return priceForcast;
    }
    
    public void setPriceForcast(Double priceForcast) {
        this.priceForcast = priceForcast;
    }
    
    public Double getPriceReal() {
        return priceReal;
    }
    
    public void setPriceReal(Double priceReal) {
        this.priceReal = priceReal;
    }
    
    public String getShippingCountryCode() {
        return shippingCountryCode;
    }
    
    public void setShippingCountryCode(String shippingCountryCode) {
        this.shippingCountryCode = shippingCountryCode;
    }
    
    public String getTimeCreated() {
        return timeCreated;
    }
    
    public void setTimeCreated(String timeCreated) {
        this.timeCreated = timeCreated;
    }
    
    public Double getWeightForcast() {
        return weightForcast;
    }
    
    public void setWeightForcast(Double weightForcast) {
        this.weightForcast = weightForcast;
    }
    
    public Double getWeightReal() {
        return weightReal;
    }
    
    public void setWeightReal(Double weightReal) {
        this.weightReal = weightReal;
    }
    
    public Double getLength() {
        return length;
    }
    
    public void setLength(Double length) {
        this.length = length;
    }
    
    public Double getWidth() {
        return width;
    }
    
    public void setWidth(Double width) {
        this.width = width;
    }
    
    public Double getHeight() {
        return height;
    }
    
    public void setHeight(Double height) {
        this.height = height;
    }
    
    public String getProductNameCn() {
        return productNameCn;
    }
    
    public void setProductNameCn(String productNameCn) {
        this.productNameCn = productNameCn;
    }
    
    public String getProductNameEn() {
        return productNameEn;
    }
    
    public void setProductNameEn(String productNameEn) {
        this.productNameEn = productNameEn;
    }
    
    public Double getProductValue() {
        return productValue;
    }

    public void setProductValue(Double productValue) {
        this.productValue = productValue;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getItemListQuantity() {
        return itemListQuantity;
    }
    
    public void setItemListQuantity(Integer itemListQuantity) {
        this.itemListQuantity = itemListQuantity;
    }
    
    public Integer getItemListCount() {
        return itemListCount;
    }
    
    public void setItemListCount(Integer itemListCount) {
        this.itemListCount = itemListCount;
    }
    
    public String getCurrencyCode() {
        return currencyCode;
    }
    
    public void setCurrencyCode(String currencyCode) {
        this.currencyCode = currencyCode;
    }
    
    public String getPlatformPayTime() {
        return platformPayTime;
    }
    
    public void setPlatformPayTime(String platformPayTime) {
        this.platformPayTime = platformPayTime;
    }
    
    public Integer getHasDelete() {
        return hasDelete;
    }
    
    public void setHasDelete(Integer hasDelete) {
        this.hasDelete = hasDelete;
    }
    
    public Integer getHasBattery() {
        return hasBattery;
    }
    
    public void setHasBattery(Integer hasBattery) {
        this.hasBattery = hasBattery;
    }
    
    public List<Item> getItemList() {
        return itemList;
    }

    public void setItemList(List<Item> itemList) {
        this.itemList = itemList;
    }

    public AddressReceive getAddressReceive() {
        return addressReceive;
    }

    public void setAddressReceive(AddressReceive addressReceive) {
        this.addressReceive = addressReceive;
    }

    public AddressPickup getAddressPickup() {
        return addressPickup;
    }

    public void setAddressPickup(AddressPickup addressPickup) {
        this.addressPickup = addressPickup;
    }

    public AddressBack getAddressBack() {
        return addressBack;
    }

    public void setAddressBack(AddressBack addressBack) {
        this.addressBack = addressBack;
    }

    public MyExpressChannel getMyExpressChannel() {
        return myExpressChannel;
    }

    public void setMyExpressChannel(MyExpressChannel myExpressChannel) {
        this.myExpressChannel = myExpressChannel;
    }

    @Override
    public String toString() {
        return "Order [code=" + code + ", outTradeCode=" + outTradeCode + ", platformTradeCode=" + platformTradeCode + ", status=" + status + ", hasException=" + hasException + ", smtChannelCode=" + smtChannelCode + ", processMessage="
            + processMessage + ", erpId=" + erpId + ", expressChannelId=" + expressChannelId + ", expressChannelCode=" + expressChannelCode + ", supplierInnerCode=" + supplierInnerCode + ", notifyStatus=" + notifyStatus + ", notifyCount="
            + notifyCount + ", notifyNextTime=" + notifyNextTime + ", packageId=" + packageId + ", priceForcast=" + priceForcast + ", priceReal=" + priceReal + ", shippingCountryCode=" + shippingCountryCode + ", timeCreated=" + timeCreated
            + ", weightForcast=" + weightForcast + ", weightReal=" + weightReal + ", length=" + length + ", width=" + width + ", height=" + height + ", productNameCn=" + productNameCn + ", productNameEn=" + productNameEn
            + ", productValue=" + productValue + ", remark=" + remark + ", itemListQuantity=" + itemListQuantity + ", itemListCount=" + itemListCount + ", currencyCode=" + currencyCode + ", platformPayTime=" + platformPayTime
            + ", hasDelete=" + hasDelete + ", hasBattery=" + hasBattery + ", itemList=" + itemList + ", addressReceive=" + addressReceive + ", addressPickup=" + addressPickup + ", addressBack=" + addressBack + ", myExpressChannel="
            + myExpressChannel + "]";
    }
}